Use case: SMARTCARD TX IT process ¶
Sequence diagram ¶
Code snippet ¶
|
HAL1 |
HAL2 |
|---|---|
#define DATA_TO_SEND_SIZE 256
uint8_t aTxBuffer[DATA_TO_SEND_SIZE] = " **** Smartcard Communication **** ";
SMARTCARD_HandleTypeDef hsmartcard;
/* Ensure that all required peripherals
(USART, GPIO, NVIC etc.) are configured properly
/*
...
*/
/* Smartcard register Transmit complete user callback */
HAL_SMARTCARD_RegisterCallback(&hsmartcard, HAL_SMARTCARD_TX_CB_ID,
Smartcard_TxCpltCallback);
/* Start a Smartcard Process in interruption mode */
HAL_SMARTCARD_Transmit_IT(&hsmartcard, aTxBuffer,
DATA_TO_SEND_SIZE);
|
#define DATA_TO_SEND_SIZE 256
uint8_t aTxBuffer[DATA_TO_SEND_SIZE] = " **** Smartcard Communication **** ";
hal_smartcard_handle_t hsmartcard;
/* Ensure that all required peripherals
(USART, GPIO, NVIC etc.) are configured properly
/*
...
*/
/* Smartcard register Transmit complete user callback */
HAL_SMARTCARD_RegisterTxCpltCallback(&hsmartcard, Smartcard_TxCpltCallback);
/* Start a Smartcard Process in interruption mode */
HAL_SMARTCARD_Transmit_IT(&hsmartcard, aTxBuffer,
DATA_TO_SEND_SIZE);
|
Key changes ¶
HAL2 uses the SMARTCARD handle type hal_smartcard_handle_t.
HAL2 provides a dedicated transmit-complete callback registration API (HAL_SMARTCARD_RegisterTxCpltCallback).

